package com.xueyi.system.ProductBatch.domain.po;

import java.math.BigDecimal;
import java.time.LocalDateTime;

import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.xueyi.common.core.web.tenant.base.TBaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.xueyi.common.core.annotation.Excel;

/**
 * 产品批次管理 持久化对象
 *
 * @author xueyi
 */
@TableName(value = "base_product_batch", excludeProperty = {"name", "sort", "status"})
public class ProductBatchPo extends TBaseEntity {

    private static final long serialVersionUID = 1L;

    /**
     * 编码
     */
    @Excel(name = "编码")
    @TableField("code")
    private String code;

    /**
     * 产品批次号
     */
    @Excel(name = "产品批次号")
    @TableField("batch")
    private String batch;

    /**
     * 产品id
     */
    @Excel(name = "产品id")
    @TableField("product_id")
    private String productId;

    /**
     * 产品名称
     */
    @Excel(name = "产品名称")
    @TableField("product_name")
    private String productName;

    /**
     * 包装批次id
     */
    @Excel(name = "包装批次id")
    @TableField("pack_batch_id")
    private String packBatchId;

    /**
     * 包装批次名称
     */
    @Excel(name = "包装批次名称")
    @TableField("pack_batch_name")
    private String packBatchName;

    /**
     * 生产日期
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @Excel(name = "生产日期", width = 30, dateFormat = "yyyy-MM-dd")
    @TableField("production_date")
    private LocalDateTime productionDate;

    /**
     * 原料报告日期
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @Excel(name = "原料报告日期", width = 30, dateFormat = "yyyy-MM-dd")
    @TableField("report_date")
    private LocalDateTime reportDate;

    /**
     * 原料数量
     */
    @Excel(name = "原料数量")
    @TableField("materials_num")
    private BigDecimal materialsNum;

    /**
     * 所属基地id
     */
    @Excel(name = "种植记录id")
    @TableField("plant_id")
    private String plantId;

    public String getPlantId() {
        return plantId;
    }

    public void setPlantId(String plantId) {
        this.plantId = plantId;
    }

    public void setCode(String code) {
        this.code = code;
    }

    public String getCode() {
        return code;
    }

    public void setBatch(String batch) {
        this.batch = batch;
    }

    public String getBatch() {
        return batch;
    }

    public void setProductId(String productId) {
        this.productId = productId;
    }

    public String getProductId() {
        return productId;
    }

    public void setProductName(String productName) {
        this.productName = productName;
    }

    public String getProductName() {
        return productName;
    }

    public void setPackBatchId(String packBatchId) {
        this.packBatchId = packBatchId;
    }

    public String getPackBatchId() {
        return packBatchId;
    }

    public void setPackBatchName(String packBatchName) {
        this.packBatchName = packBatchName;
    }

    public String getPackBatchName() {
        return packBatchName;
    }

    public void setProductionDate(LocalDateTime productionDate) {
        this.productionDate = productionDate;
    }

    public LocalDateTime getProductionDate() {
        return productionDate;
    }

    public void setReportDate(LocalDateTime reportDate) {
        this.reportDate = reportDate;
    }

    public LocalDateTime getReportDate() {
        return reportDate;
    }

    public void setMaterialsNum(BigDecimal materialsNum) {
        this.materialsNum = materialsNum;
    }

    public BigDecimal getMaterialsNum() {
        return materialsNum;
    }

}
